package fr.guy.aurelie.eportfolio.client.view;

import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.DecoratorPanel;
import com.google.gwt.user.client.ui.DisclosurePanel;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.Image;
import com.google.gwt.user.client.ui.VerticalPanel;

import fr.guy.aurelie.eportfolio.client.helper.MyResources;
import fr.guy.aurelie.eportfolio.client.presenter.MyCoursePresenter;

public class MyCourseView extends Composite implements
		MyCoursePresenter.Display {
	private final VerticalPanel mainPanel;

	public static final int PANEL_TOP = 20;
	public static final int PANEL_LEFT = 20;

	public MyCourseView() {
		DecoratorPanel decoratorPanel = new DecoratorPanel();
		initWidget(decoratorPanel);

		// FIXME "Image du diplôme non téléchargeable"
		mainPanel = new VerticalPanel();

		String degreePresentation1 = "<h2>Responsable en gestion</h2><br />"
				+ "Titre RNCP niveau II<br />"
				+ "En cours d'obtention en alternance<br />"
				+ "Conservatoire National des Arts et métiers - Lille (59)<br /><br />";

		String degreeContent1 = "<h3>Principaux enseignements :</h3>"
				+ "<ul><li>Les mécanismes de l'économie contemporaine</li>"
				+ "<li>Concepts et études marketing</li>"
				+ "<li>Règles générales du droit des contrats</li>"
				+ "<li>Comptabilité et analyse financière</li>"
				+ "<li>Management processus et organisation de l'entreprise</li>"
				+ "<li>Finance d'entreprise : gestion et politique financière</li>"
				+ "<li>Action commerciale internationale</li>"
				+ "<li>Principes, outils et pratiques du management</li>"
				+ "<li>Gestion des hommes</li>"
				+ "<li>Comptabilité et contrôle de gestion</li>"
				+ "<li>Stratégie marketing</li>"
				+ "<li>Principaux contrats de l'entreprise</li></ul>";
		// content
		HTML content1 = new HTML(degreePresentation1 + degreeContent1);
		Image preview1 = new Image(
				MyResources.INSTANCE.connaissanceUniversitairePreview());
		preview1.addStyleName("imgPreview");
		// photo
		VerticalPanel photoPanel1 = new VerticalPanel();
		photoPanel1.add(preview1);
		DisclosurePanel disclosurePanel1 = new DisclosurePanel("Mon carnet d'apprentissage");
		disclosurePanel1.setAnimationEnabled(true);
		disclosurePanel1.setContent(photoPanel1);
		// main
		VerticalPanel training1 = new VerticalPanel();
		training1.add(content1);
		training1.add(disclosurePanel1);

		String degreePresentation2 = "<h2>Licence Informatique Générale</h2><br />"
				+ "De septembre 2009 à août 2010<br />"
				+ "Diplôme obtenu en alternance<br />"
				+ "Conservatoire National des Arts et métiers - Lille (59)<br /><br />";

		String degreeContent2 = "<h3>Principaux enseignements :</h3>"
				+ "<ul><li>Recherche opérationnelle et aide à la décision</li>"
				+ "<li>Génie logiciel</li>"
				+ "<li>Programmation Fonctionnelle : Conception et Analyse</li>"
				+ "<li>Méthodologies des systèmes d'information</li>"
				+ "<li>Systèmes de gestion de bases de données</li>"
				+ "<li>Réseaux et télécommunications</li>"
				+ "<li>Pratiques écrites et orales de la communication professionnelle</li>"
				+ "<li>Anglais</li></ul>";
		// content
		HTML content2 = new HTML(degreePresentation2 + degreeContent2);
		Image preview2 = new Image(
				MyResources.INSTANCE.licenceInformatiquePreview());
		preview2.addStyleName("imgPreview");
		// photo
		VerticalPanel photoPanel2 = new VerticalPanel();
		photoPanel2.add(preview2);
		DisclosurePanel disclosurePanel2 = new DisclosurePanel("Attestation du diplôme de Licence Informatique");
		disclosurePanel2.setAnimationEnabled(true);
		disclosurePanel2.setContent(photoPanel2);
		// main
		VerticalPanel training2 = new VerticalPanel();
		training2.add(content2);
		training2.add(disclosurePanel2);

		String degreePresentation3 = "<h2>D.U.T. Informatique</h2><br />"
				+ "De septembre 2007 à août 2009<br />"
				+ "Diplôme obtenu en alternance<br />"
				+ "Université de Valenciennes - Antenne de Maubeuge (59)<br /><br />";

		String degreeContent3 = "<h3>Principaux enseignements :</h3>"
				+ "<ul><li>ALGORITHMIQUE ET PROGRAMMATION : Initiation à l'algorithmique, algorithmes et utilisation de structures de données, conception de structures de données, programmation par objets, programmation web</li>"
				+ "<li>ARCHITECTURES, SYSTÈMES ET RÉSEAUX : Architecture de l'ordinateur, architecture et programmation, comprendre et utiliser un système d'exploitation, fondements et mise en oeuvre d'un système, comprendre et utiliser un réseau</li>"
				+ "<li>OUTILS ET MODÈLES DU GÉNIE LOGICIEL : Modélisation des systèmes d'information, techniques complémentaires de production de logiciel, principes des bases de données</li>"
				+ "<li>MATHÉMATIQUES : Mathématiques discrètes, algèbre linéaire et géométrie, analyse, probabilités et statistique, outils mathématiques de modélisation</li>"
				+ "<li>ÉCONOMIE ET GESTION DES ORGANISATIONS : Environnement économique, environnement juridique et social, fonctionnement de l'entreprise, gestion de l'entreprise, gestion de l'informatique</li>"
				+ "<li>LANGUE ANGLAISE</li>"
				+ "<li>EXPRESSION ET COMMUNICATION</li></ul>";
		// content
		HTML content3 = new HTML(degreePresentation3 + degreeContent3);
		Image preview3 = new Image(
				MyResources.INSTANCE.dutInformatiquePreview());
		preview3.addStyleName("imgPreview");
		// photo
		VerticalPanel photoPanel3 = new VerticalPanel();
		photoPanel3.add(preview3);
		DisclosurePanel disclosurePanel3 = new DisclosurePanel("Diplôme du DUT informatique");
		disclosurePanel3.setAnimationEnabled(true);
		disclosurePanel3.setContent(photoPanel3);
		// main
		VerticalPanel training3 = new VerticalPanel();
		training3.add(content3);
		training3.add(disclosurePanel3);

		String degreePresentation4 = "<h2>1ère année Diplôme d'Etat de Manipulatrice en Electroradiologie Médicale</h2><br />"
				+ "De septembre 2006 à juin 2007<br />"
				+ "Institut de Formation des Manipulateurs en Electroradiologie Médicale - Hôpital Pitié-Salpêtrière - Paris (75)<br />"
				+ "Diplôme non validé<br /><br />";

		String degreeContent4 = "";

		HTML training4 = new HTML();
		training4.setHTML(degreePresentation4 + degreeContent4);

		String degreePresentation5 = "<h2>Baccalauréat</h2><br />"
				+ "Obtenu en juin 2006<br />"
				+ "Série Scientifique option Sciences de la Vie et de la Terre spécialité Mathématiques<br />"
				+ "Lycée Jean Calvin - Noyon (60)<br />"
				+ "Mention Assez Bien<br /><br />";

		String degreeContent5 = "";
		// content
		HTML content5 = new HTML(degreePresentation5 + degreeContent5);
		Image preview5 = new Image(
				MyResources.INSTANCE.bacPreview());
		preview5.addStyleName("imgPreview");
		// photo
		VerticalPanel photoPanel5 = new VerticalPanel();
		photoPanel5.add(preview5);
		DisclosurePanel disclosurePanel5 = new DisclosurePanel("Diplôme du Baccalauréat");
		disclosurePanel5.setAnimationEnabled(true);
		disclosurePanel5.setContent(photoPanel5);
		// main
		VerticalPanel training5 = new VerticalPanel();
		training5.add(content5);
		training5.add(disclosurePanel5);

		training1.addStyleName("borderPanel");
		training2.addStyleName("borderPanel");
		training3.addStyleName("borderPanel");
		training4.addStyleName("borderPanel");
		training5.addStyleName("borderPanel");
		mainPanel.add(training1);
		mainPanel.add(training2);
		mainPanel.add(training3);
		mainPanel.add(training4);
		mainPanel.add(training5);
		decoratorPanel.add(mainPanel);
	}
}
